.vote-seats {
  margin-left: 2.5vw;
  display: flex;
  align-items: center;
  font-size: 3vw;
}

.vote-iteration {
  font-size: 2vw;
  font-weight: 200;
  margin-left: 2.5vw;
}

.vote-seats .material-icons {
  opacity: 0.54;
  margin-right: .25vw;
  font-size: 3vw;
}

.vote-counters {
  margin-left: 2.5vw;
}

.vote-counter {
  display: inline-block;
  font-weight: 300;
  margin-left: 1.25vw;
}

.vote-counter:first-child {
  margin-left: 0;
}

.vote-counter-hint {
  font-size: 1.5vw;
  font-weight: 300;
}

.vote-counter-value {
  font-size: 3vw;
}

.vote-counter-positive {
  color: #4caf50;
}

.vote-counter-negative {
  color: #f44336;
}

.vote-counter-abstained {
  color: black;
}

.vote-counter-target {
  color: #2196f3;
}

.list.voters {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 12.5vw;
  top: 0vw;
  padding: 0 5vw;
  margin-bottom: 0;
  padding-bottom: 8vw;

  display: flex;
  flex-direction: column;
  flex-flow: column wrap;

  overflow-x: auto;

  -webkit-app-region: no-drag;
}

.voter .list-item-indicator {
  transition: opacity .2s ease, background-color .2s ease;
}

.voter .voter-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: .625vw;
  transition: opacity .2s ease, background-color .2s ease;

  opacity: 0;
  background-color: transparent;
}

.voter.abstained .list-item-indicator {
  opacity: .48;
}

.voter.abstained .voter-bg {
  background-color: black;
  opacity: .18;
}

.voter.positive .list-item-indicator {
  background-color: #4CAF50;
  opacity: .48;
}

.voter.positive .voter-bg {
  background-color: #4CAF50;
  opacity: .18;
}

.voter.negative .list-item-indicator {
  background-color: #F44336;
  opacity: .48;
}

.voter.negative .voter-bg {
  background-color: #F44336;
  opacity: .18;
}

.voter {
  font-size: 2vw;
  width: 25vw;
  margin-right: 2.5vw;
}

.voter-progress-container {
  position: absolute;
  bottom: 12.5vw;
  height: 5vw;
  left: 0;
  right: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  pointer-events: none;
}

.voter-progress {
  position: relative;
  width: 50vw;
  height: 0.5vw;
  overflow: hidden;

  background: rgba(0,0,0,.1);
}

.voter-progress-inner {
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;

  transition: transform .2s ease;
  background: rgba(0,0,0,.3);
}

.voter-progress-inner.positive {
  background-color: #A9D9AB;
}

.voter-progress-inner.negative {
  background-color: #FAA59E;
}

.voter-progress-inner.abstained {
  background-color: #858585;
}

.voter-progress-target {
  position: absolute;
  left: 25vw;

  background-color: #2196F3;
  height: 2vw;
  width: 0.5vw;
  margin-left: -.25vw;
  transition: transform .2s ease;
}
